package com.blb.zy_community.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 房屋绑定表 
 * </p>
 *
 * @author 二组
 * @since 2023-06-18
 */
@TableName("zy_owner_room")
public class ZyOwnerRoom implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 房屋绑定id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @TableId
    private Long ownerRoomId;

    /**
     * 小区id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long communityId;

    /**
     * 楼栋id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long buildingId;

    /**
     * 单元id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long unitId;

    /**
     * 房间id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long roomId;

    /**
     * 业主id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long ownerId;

    /**
     * 业主类型
     */
    private String ownerType;

    /**
     * 绑定状态（0审核中 1绑定 2审核失败）
     */
    private String roomStatus;

    /**
     * 创建者
     */
    private String createBy;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新者
     */
    private String updateBy;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 备注
     */
    private String remark;

    /**
     * 小区信息
     */
    @TableField(exist = false)
    private ZyCommunity zyCommunity;

    /**
     * 楼栋信息
     */
    @TableField(exist = false)
    private ZyBuilding zyBuilding;

    /**
     * 单元信息
     */
    @TableField(exist = false)
    private ZyUnit zyUnit;

    /**
     * 房屋信息
     */
    @TableField(exist = false)
    private ZyRoom zyRoom;

    /**
     * 业主信息
     */
    @TableField(exist = false)
    private ZyOwner zyOwner;


    public ZyCommunity getZyCommunity() {
        return zyCommunity;
    }

    public void setZyCommunity(ZyCommunity zyCommunity) {
        this.zyCommunity = zyCommunity;
    }

    public ZyBuilding getZyBuilding() {
        return zyBuilding;
    }

    public void setZyBuilding(ZyBuilding zyBuilding) {
        this.zyBuilding = zyBuilding;
    }

    public ZyUnit getZyUnit() {
        return zyUnit;
    }

    public void setZyUnit(ZyUnit zyUnit) {
        this.zyUnit = zyUnit;
    }

    public ZyRoom getZyRoom() {
        return zyRoom;
    }

    public void setZyRoom(ZyRoom zyRoom) {
        this.zyRoom = zyRoom;
    }

    public ZyOwner getZyOwner() {
        return zyOwner;
    }

    public void setZyOwner(ZyOwner zyOwner) {
        this.zyOwner = zyOwner;
    }

    public Long getOwnerRoomId() {
        return ownerRoomId;
    }

    public void setOwnerRoomId(Long ownerRoomId) {
        this.ownerRoomId = ownerRoomId;
    }

    public Long getCommunityId() {
        return communityId;
    }

    public void setCommunityId(Long communityId) {
        this.communityId = communityId;
    }

    public Long getBuildingId() {
        return buildingId;
    }

    public void setBuildingId(Long buildingId) {
        this.buildingId = buildingId;
    }

    public Long getUnitId() {
        return unitId;
    }

    public void setUnitId(Long unitId) {
        this.unitId = unitId;
    }

    public Long getRoomId() {
        return roomId;
    }

    public void setRoomId(Long roomId) {
        this.roomId = roomId;
    }

    public Long getOwnerId() {
        return ownerId;
    }

    public void setOwnerId(Long ownerId) {
        this.ownerId = ownerId;
    }

    public String getOwnerType() {
        return ownerType;
    }

    public void setOwnerType(String ownerType) {
        this.ownerType = ownerType;
    }

    public String getRoomStatus() {
        return roomStatus;
    }

    public void setRoomStatus(String roomStatus) {
        this.roomStatus = roomStatus;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public LocalDateTime getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }


    @Override
    public String toString() {
        return "ZyOwnerRoom{" +
                "ownerRoomId=" + ownerRoomId +
                ", communityId=" + communityId +
                ", buildingId=" + buildingId +
                ", unitId=" + unitId +
                ", roomId=" + roomId +
                ", ownerId=" + ownerId +
                ", ownerType='" + ownerType + '\'' +
                ", roomStatus='" + roomStatus + '\'' +
                ", createBy='" + createBy + '\'' +
                ", createTime=" + createTime +
                ", updateBy='" + updateBy + '\'' +
                ", updateTime=" + updateTime +
                ", remark='" + remark + '\'' +
                ", zyCommunity=" + zyCommunity +
                ", zyBuilding=" + zyBuilding +
                ", zyUnit=" + zyUnit +
                ", zyRoom=" + zyRoom +
                ", zyOwner=" + zyOwner +
                '}';
    }
}
